package com.ysstech.etfmanage.entity;


import java.io.Serializable;
import java.math.BigDecimal;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class ParamVo implements Serializable {
    //基金编码
    public String accountId;
    //ETF交易席位
    public String etfSeat;
    //ETF方式
    public Integer etfMode;
    //ETF市场
    public String etfMarket;
    //ETF类型 单市场，跨市场，集中申购
    public Integer etfType;
    //ETF基准比例值
    public BigDecimal etfBenchmarkScale = BigDecimal.ZERO;

    //ETF深圳补票席位
    public String etfFillSeat;
    //ETF深圳补票席位
    public String etfFillSeatSz;
    //ETF上海补票席位
    public String etfFillSeatSh;
    //ETF上海补票席位
    public String etfFillSeatHk;


    //强制处理证券交易天数
    public Integer forceTransactionDays = 2;
    //强制处理证券交易天数
    public Integer forceTransactionDaysSz = 2;
    //强制处理证券交易天数
    public Integer forceTransactionDaysSh = 2;
    //强制处理证券交易天数
    public Integer forceTransactionDaysHk = 2;

    //强制处理交易所交易天数
    public Integer forceExchangeDays = 20;
    //强制处理交易所交易天数
    public Integer forceExchangeDaysSz = 20;
    //强制处理交易所交易天数
    public Integer forceExchangeDaysSh = 20;
    //强制处理交易所交易天数
    public Integer forceExchangeDaysHk = 20;

    //ETF汇率
    public BigDecimal etfRate;
    //ETF汇率
    public BigDecimal etfRateSz;
    //ETF汇率
    public BigDecimal etfRateSh;
    //ETF汇率
    public BigDecimal etfRateHk;

    // 资金代码
    public String capitalCode;
    // 资金代码
    public String capitalCodeSz;
    // 资金代码
    public String capitalCodeSh;
    // 资金代码
    public String capitalCodeHk;

    //补票日期
    public Integer etfStartFillDate;
    //补票日期
    public Integer etfStartFillDateSz;
    //补票日期
    public Integer etfStartFillDateSh;
    //补票日期
    public Integer etfStartFillDateHk;

    //ETF台账更新方式  1.移动加权  2.先到先补  3. 轧差+移动加权 4. 轧差+先到先补
    public Integer etfRenewType;
    //ETF台账更新方式
    public Integer etfRenewTypeSz;
    //ETF台账更新方式
    public Integer etfRenewTypeSh;
    //ETF台账更新方式
    public Integer etfRenewTypeHk;

    //ETF行情价格
    public Integer etfOrganizationPrice = 1;
    //ETF行情价格
    public Integer etfOrganizationPriceSz = 1;
    //ETF行情价格
    public Integer etfOrganizationPriceSh = 1;
    //ETF行情价格
    public Integer etfOrganizationPriceHk = 1;

    //ETF台账碎股二次补票
    public Boolean etfSecondFill = false;
    //ETF台账碎股二次补票
    public Boolean etfSecondFillSz = false;
    //ETF台账碎股二次补票
    public Boolean etfSecondFillSh = false;
    //ETF台账碎股二次补票
    public Boolean etfSecondFillHk = false;


    // 应付替代款结转日期
    public Integer payableReplaceMoneyDays = 2;
    // 应付替代款结转日期
    public Integer payableReplaceMoneyDaysSz = 2;
    // 应付替代款结转日期
    public Integer payableReplaceMoneyDaysSh= 2;
    // 应付替代款结转日期
    public Integer payableReplaceMoneyDaysHk= 2;


}
